package com.xuecheng.content.service;

import com.xuecheng.base.exception.Result;
import com.xuecheng.content.model.dto.BindTeachplanMediaDto;
import com.xuecheng.content.model.dto.SaveTeachplanDto;
import com.xuecheng.content.model.dto.TeachplanDto;
import com.xuecheng.content.model.po.Teachplan;
import com.xuecheng.content.model.po.TeachplanMedia;

import java.util.List;


public interface TeachplanService {

 /**
  * 查询课程计划树型结构
  * @param courseId
  * @return
  */
 public List<TeachplanDto> findTeachplanTree(long courseId);




 /**
  * @description 保存课程计划
  * @param teachplanDto  课程计划信息
  * @return void
  */
 public void saveTeachplan(SaveTeachplanDto teachplanDto);

 /**
  * @description 删除课程计划
  * @param id
  */
 public Result deleteTeachplan(Long id);

 /**
  * 上移或者下移章节
  * @param moveType
  * @param id
  */

 public void move( String moveType, Long id);

 public void deleteCourse(Long compangId, Long courseId);


 /**
  * @description 教学计划绑定媒资
  * @param bindTeachplanMediaDto
  * @return com.xuecheng.content.model.po.TeachplanMedia
  */
 public TeachplanMedia associationMedia(BindTeachplanMediaDto bindTeachplanMediaDto);

 /**
  * 删除课程计划和媒资信息绑定
  * @param teachPlanId
  * @param mediaId
  */
 public void deletebyteachPlanId(Long teachPlanId, String mediaId);

 /**
  * 查询课程计划列表·
  * @param courseId
  * @return
  */
 List<Teachplan>getBycourseId(Long courseId);

}